// Package 内存对齐研究 main
// @Title 内存对齐研究
// @Description
// @Author  == 琳琳也叫王木木 ==  2022-03-04 9:25
// @Create  2022-03-04 9:25
package main

import (
	"fmt"
	"unsafe"
)

type P1 struct {
	a  bool  // 1
	e  bool  // 1
	e1 bool  // 1
	e2 bool  // 1
	b  int32 // 4
	d  int64 // 8

	//c int8  // 1
	//e byte
}

func main() {
	fmt.Printf("布尔大小 : %d\n", unsafe.Sizeof(bool(true)))
	fmt.Printf("int 32大小 : %d\n", unsafe.Sizeof(int32(0)))
	fmt.Printf("int 8大小 : %d\n", unsafe.Sizeof(int8(0)))
	fmt.Printf("int 64大小 : %d\n", unsafe.Sizeof(int64(0)))
	fmt.Printf("byte大小 : %d\n", unsafe.Sizeof(byte(0)))
	fmt.Printf("字符串大小 : %d\n", unsafe.Sizeof(string("ASDB")))
	p := P1{}
	fmt.Printf("结构体大小 : %d, align %d\n", unsafe.Sizeof(p), unsafe.Alignof(p))
}
